class SP_Constraint:
    """
    Each SP_Constraint object is associated with
    a single node object.

    The SP_Constraint clas only
    allows time-invariant contraints.  Any constraint
    that varies with time must be implemented in subclasses
    of SP_Constraint.
    """

    def __init__(self, node_tag="", number_of_degrees_of_freedom="", value="", is_homogeneou=""):
        if node_tag == "":
            self.node_tag = 0
        else:
            self.node_tag = node_tag

        if number_of_degrees_of_freedom == "":
            self.number_of_degrees_of_freedom = 0
        else:
            self.number_of_degrees_of_freedom = number_of_degrees_of_freedom

        if value == "":
            self.value = 0.0
        else:
            self.value = value

        if is_homogeneous == "":
            self.is_homogeneous = False
        else:
            self.is_homogeneous = is_homogeneous
        

    
